Many users of computing devices prefer to interact with computing systems using natural language, e.g. words and sentences in the user's native language, as opposed to more restrictive user interfaces (such as forms) or using specific programming or query languages. For example, users may wish to ascertain a status of a complex technical system, such as a transport control system or a data center, or be provided with assistance in operating technical devices, such as embedded devices in the home or industry. Natural language interfaces also provide a much larger range of potential queries. For example, users may find that structured queries or forms do not provide options that relate to their particular query. This becomes more of an issue as computing systems increase in complexity; it may not be possible to enumerate (or predict) all the possible user queries in advance of operation.
To provide a natural language interface to users, conversational agents have been proposed. These include agents sometimes known colloquially as “chatbots”. In the past, these systems used hand-crafted rules to parse user messages and provide a response. For example, a user query such as “Where is the power button on device X?” may be parsed by looking for string matches for the set of terms “where”, “power button” and “device X” in a look-up table, and replying with a retrieved answer from the table, e.g. “On the base”. However, these systems are somewhat limited; for example, the user message “I am looking for the on switch for my X” would not return a match and the conversational agent would fail to retrieve an answer.
To improve conversational modelling, a neural conversation model has been proposed to provide a conversational agent, e.g. as in the following document. VINYALS, Oriol and LE, Quoc. A neural conversational model. arXiv preprint arXiv:1506.05869. Submitted 19 June 2015. In this neural conversation model, a sequence-to-sequence framework is used to generate short machine replies to user-submitted text. The model uses a data driven approach, rather than a rule-based approach. While the neural conversation model generates replies that are rated more useful than a comparative rule-based system, the authors admit that their model still has limitations. For example, the conversational agent only gives short and simple answers, which may not always address a user's query. Additionally, the authors found that replies were often inconsistent, e.g. if semantically similar user queries with differing text data were submitted, the conversational agent would provide inconsistent (i.e. differing) answers. Neural conversation models such as in the above paper have been found to be difficult to implement as practical user interfaces in the real-world, e.g. due to the aforementioned issues.
Accordingly, there is a desire to improve user-computing interfaces to enable users to submit natural language queries and to provide these interfaces in a practical and implementable manner By improving user-computing interfaces, it may be possible to efficiently provide responses to a large number of user queries, e.g. which are received concurrently.